# ygg-brute

A CUDA miner for yggdrasil network addresses

## Warning: this is an alpha version software. Bugs are to be expected.

# Build

OpenCL engine requires OpenCL C++ headers (`opencl-clhpp-headers` on Ubuntu, `opencl-clhpp` on Archlinux, `dev-libs/clhpp` on Gentoo, etc.).

The GPU's compute capability should be specified for optimal performance.
It can be obtained from [CUDA capabilities](https://developer.nvidia.com/cuda-gpus).

```bash
cmake -H. -Bbuild -DCMAKE_CUDA_ARCHITECTURES=<your CUDA capability, i.e 61 for Pascal 1060 GTX>
cmake --build build
```

Currently there are two engines: CUDA and OpenCL. By default both are built, but it's possible to select only one via `YGG_BRUTE_ENGINES` variable:

```bash
# Select only the CUDA engine
cmake -H. -Bbuild -DYGG_BRUTE_ENGINES=cuda
# Select only the OpenCl engine
cmake -H. -Bbuild -DYGG_BRUTE_ENGINES=opencl
```

# Usage

```bash
ygg-brute --help
```